package com.filyar.htyd.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.filyar.htyd.entity.Schedule;
import com.baomidou.mybatisplus.extension.service.IService;
import com.filyar.htyd.entity.vo.PersonShiftCountVo;
import com.filyar.htyd.entity.vo.PersonStatisticsVo;
import com.filyar.htyd.entity.vo.ScheduleVo;

import java.util.List;

/**
 * @author filyar
 * @since 2024-08-29
 * @e-mail root@filyar.com
 */
public interface IScheduleService extends IService<Schedule> {

    List<ScheduleVo> generate(String date);

    List<PersonShiftCountVo> getPersonList(Integer dayTypeId, Integer gender);

    List<ScheduleVo> querySchedule(String date);

    void deleteSchedule(String date);

    List<ScheduleVo> shift(String date);

    Page<ScheduleVo> getPersonShiftHistoryList(Integer personId, Integer pageNum, Integer pageSize);

    List<PersonStatisticsVo> getPersonStatistics(Integer personId);
}
